package com.zee.wechat.framework.enums;

import lombok.Getter;

/**
 * 框架层异常，非业务异常
 *
 * @author Zee
 * @date 2020年6月10日
 */
@Getter
public enum ResultCode implements StatusCode {
    /**
     * 成功
     */
    SUCCESS("1000", "成功"),
    /**
     * 失败
     */
    ERROR("1001", "失败"),
    SYSTEM_ERROR("1000", "系统出错！"),
    /**
     * 参数校验失败
     */
    VALIDATE_ERROR("1002", "参数校验失败"),
    /**
     * response返回包装失败
     */
    RESPONSE_PACK_ERROR("1003", "response返回包装失败"),

    /**
     * 系统类
     */
    ERR10001("10001", "用户名或密码不能为空"),
    ERR10002("10002", "用户名或密码错误"),
    ERR10003("10003", "当前账户已被禁用"),
    ERR10004("10004", "参数异常"),
    ERR10005("10005", "当前用户未登录"),
    ERR10006("10006", "权限不足"),
    ERR10007("10007", "该角色有用户使用，无法删除"),
    ERR10008("10008", "群组中有用户存在，无法删除"),
    ERR10009("10009", "群组中已存在该手机用户"),
    ERR10010("10010", "该手机用户已存在，可修改该用户关联群组或在群组中添加该用户"),
    ERR10011("10011", "该角色已存在，请勿重复添加"),
    ERR10012("10012", "系统管理员不可重复添加"),
    ERR10013("10013", "用户名已存在"),
    ERR10014("10014", "原密码错误"),
    ERR10015("10015", "请求参数为空或不正确"),
    ERR10016("10016", "系统管理员角色不可被删除"),
    ERR10017("10017", "超级管理员不可被删除"),
    ERR10018("10018", "当前IP不允许登录该账号"),
    ERR10019("10019", "TOKEN校验异常，请检查TOKEN参数"),
    ERR10020("10020", "TOKEN过期，请重新登录"),
    ERR10021("10021", "TOKEN加密异常"),
    ERR10022("10022", "参数id不能为空"),
    ERR10023("10023", "角色不能为空"),
    ERR10024("10024", "角色不存在，请确认参数"),
    ERR10025("10025", "非法操作管理员账户"),
    ERR10026("10026", "该类型下的产品模板已存在,请添加其它类型！"),
    /**
     * 业务类
     */
    ERR20001("20001", "该群组有决策信息存在，无法删除"),
    ERR20002("20002", "发布的决策信息不存在"),
    ERR20003("20003", "此条信息内容包含敏感词:"),
    ERR20004("20004", "当前群组编号已存在"),
    ERR20005("20005", "该账号当月发布信息次数已超过最大限制"),

    ERR30001("30001", "请填写刊号和发布对象"),
    ERR30002("30002", "刊号不符合规则或已存在"),
    ERR30003("30003", "产品类型与预警等级不匹配"),
    ERR30004("30004", "NOT FOUND"),
    ERR30005("30005", "刊号已经是本年的最早一期"),
    /**
     * 数据相关
     */
    ERR30006("30006", "当前查询暂无数据"),
    ERR30007("30007", "只能上传doc,docx类型文件"),
    ERR30008("30008", "只能上传图片类型文件"),
    ERR30009("30009", "图片上传只有在2MB内"),
    ERR30010("30010", "文件上传出错");

    private String code;
    private String msg;

    ResultCode(String code, String msg) {
        this.code = code;
        this.msg = msg;
    }
}
